package com.weipai.springboot.module.dao;

import com.weipai.springboot.model.ProductProperty;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @Author: 曹朋飞
 * @Date: 2018/08/24 14:32
 */
public interface ProductPropertyDao {

    int deleteByPrimaryKey(String propertyId);

    int insert(ProductProperty record);
    
    //查询详情
    ProductProperty getPropertyById(String id);

    //分页查询
    List<ProductProperty> selectAllByProductCategoryId(@Param("start") Integer start, @Param("end") Integer size,
                                                       @Param("productCategoryId") String productCategoryId);

    //分页的总数量
    Integer selectAllByProductCategoryIdAmount(String productCategoryId);

    //更改状态
    int updateStatus(String id, Integer status);

    //通过第三级的商品分类获取到属性与属性选项
    List<Object> getOptionByPropertyCategoryId(String id, String spuNumber, String type);

    int update(ProductProperty property);


    //获得所有属性名称
    List<String> getAllProperty();
    
    ProductProperty selectByPrimaryKey(String id);

    List<ProductProperty> getProductPropertyByCategoryId(String id);

    Integer updatePropertyName(String id, String propertyName);

    //通过产品的id来查询出此商品下面的所有属性和属性选项
    List<Object> getOptionByProductId(String productId, String spuNumber, String type);

    //通过属性id删除属性选项
    void deleteOption(String id);
}
